When preparing palm traits for analysis, I had to remove several variables that contained NAs for our palm species. Also, I removed the descriptive traits about the fruit, and the variable “FruitShape” because it has blank values.
To successfully run this, I had to remove Habitat type from our environmental variables. The problem might be the naming convention. Sarah, can you make three letter codes for these?
That’s unreadable, plotting as seperate.
Summary of RLQ analysis. How to interpret this?
## RLQ analysis
##
## Class: rlq dudi
## Call: rlq(dudiR = acpR.aravo, dudiL = afcL.aravo, dudiQ = acpQ.aravo,
## scannf = FALSE)
##
## Total inertia: 0.657
##
## Eigenvalues:
## Ax1 Ax2 Ax3 Ax4 Ax5
## 0.300155 0.228303 0.083533 0.041707 0.001744
##
## Projected inertia (%):
## Ax1 Ax2 Ax3 Ax4 Ax5
## 45.6877 34.7508 12.7148 6.3484 0.2654
##
## Cumulative projected inertia (%):
## Ax1 Ax1:2 Ax1:3 Ax1:4 Ax1:5
## 45.69 80.44 93.15 99.50 99.77
##
## (Only 5 dimensions (out of 9) are shown)
##
##
## Eigenvalues decomposition:
## eig covar sdR sdQ corr
## 1 0.3001551 0.5478641 1.034229 1.481707 0.3575146
## 2 0.2283026 0.4778102 1.084627 2.004471 0.2197734
##
## Inertia & coinertia R (acpR.aravo):
## inertia max ratio
## 1 1.069629 1.755539 0.6092881
## 12 2.246045 3.085130 0.7280229
##
## Inertia & coinertia Q (acpQ.aravo):
## inertia max ratio
## 1 2.195457 5.095305 0.4308784
## 12 6.213361 7.950625 0.7814933
##
## Correlation L (afcL.aravo):
## corr max ratio
## 1 0.3575146 0.9327084 0.3833080
## 2 0.2197734 0.8335977 0.2636445
From tutorial: “Fourth-corner analysis can be used to test the associations between individual traits and environmental variables. To obtain a test with a correct type I error, results of model 2 (permutation of sites, i.e. rows) and 4 (permutation of species, i.e. columns) should be combined.”
nrepet <- 999
four.comb.aravo <- fourthcorner(p_env[,-10], p_species,
p_traits, modeltype = 6, p.adjust.method.G = "none",
p.adjust.method.D = "none", nrepet = nrepet)Plotting the data: “Blue cells correspond to negative significant relationships while red cells correspond to positive significant relationships (this can be modified using the argument col).”
I used the D2 option when plotting, but others exist: stat=“D2”: the association is measured between the quantitative variable and each category separately. A correlation coefficient is used to indicate the strength of the association between the given category and the small or large values of the quantitative variable. stat=“G”: the association between the quantitative variable and the whole categorical variable is measured by a global statistic (F). stat=“D”: the association is estimated between the quantitative variable and each category separately by a measure of the within-group homogeneity. The strength of the association is indicated by the dispersion of the values of the quantitative variable for a given category.
To replot the data for multiple comparisons: “Now, we adjust p-values for multiple comparisons (here we used the fdr method using the p.adjust.4thcorner function).”
“First, a multivariate test can be applied to evaluate the global significance of the traits-environment relationships. This test is based on the total inertia of the RLQ analysis”
## class: krandtest lightkrandtest
## Monte-Carlo tests
## Call: randtest.rlq(xtest = rlq.aravo, nrepet = nrepet, modeltype = 6)
##
## Number of tests: 2
##
## Adjustment method for multiple comparisons: none
## Permutation number: 999
## Test Obs Std.Obs Alter Pvalue
## 1 Model 2 0.6569709 -0.1346780 greater 0.507
## 2 Model 4 0.6569709 -0.9536772 greater 0.829
The total inertia of RLQ analysis is equal to the SRLQ multivariate statistic defined in Dray and Legendre (2008). This statistic is returned by the fourthcorner2 function:
Srlq <- fourthcorner2(p_env[,-10], p_species, p_traits,
modeltype = 6, p.adjust.method.G = "fdr", nrepet = nrepet)
Srlq$trRLQ## Monte-Carlo test
## Call: fourthcorner2(tabR = p_env[, -10], tabL = p_species, tabQ = p_traits,
## modeltype = 6, nrepet = nrepet, p.adjust.method.G = "fdr")
##
## Observation: -8990.343
##
## Based on 999 replicates
## Simulated p-value: 0.822
## Alternative hypothesis: greater
##
## Std.Obs Expectation Variance
## -9.206018e-01 -8.990088e+03 7.649906e-02
“Both approaches can be combined if RLQ scores are used to represent traits and environmental variables on a biplot. Then, significant associations revealed by the fourthcorner approach can be represented using segments (blue lines for negative associations, red lines for positive associations, see the argument col). Only traits and environmental variables that have at least one significant association are represented. Here, we apply this method using adjusted pvalues for multiple comparisons and a significant level α = 0.05.”
“Another approach is provided by the fourthcorner.rlq function and consists in testing directly the links between RLQ axes and traits (typetest=”Q.axes“) or environmental variables (typetest=”R.axes“).”
RLQ axes and traits
## Fourth-corner Statistics
## ------------------------
## Permutation method Comb. 2 and 4 ( 999 permutations)
##
## Adjustment method for multiple comparisons: fdr
## call: fourthcorner.rlq(xtest = rlq.aravo, nrepet = nrepet, modeltype = 6, typetest = "Q.axes", p.adjust.method.G = "fdr", p.adjust.method.D = "fdr")
##
## ---
##
## Test Stat Obs Std.Obs Alter
## 1 AxcR1 / Climb.0 Homog. 0.96134310 2.20116058 less
## 2 AxcR2 / Climb.0 Homog. 0.89121986 -0.53679743 less
## 3 AxcR1 / Climb.1 Homog. 0.03686797 -0.24848563 less
## 4 AxcR2 / Climb.1 Homog. 0.10785496 1.78642185 less
## 5 AxcR1 / Acaul.0 Homog. 1.00000000 <NA> less
## 6 AxcR2 / Acaul.0 Homog. 1.00000000 <NA> less
## 7 AxcR1 / Erect.0 Homog. 0.03686797 -0.24848563 less
## 8 AxcR2 / Erect.0 Homog. 0.10785496 1.78642185 less
## 9 AxcR1 / Erect.1 Homog. 0.96134310 2.20116058 less
## 10 AxcR2 / Erect.1 Homog. 0.89121986 -0.53679743 less
## 11 AxcR1 / StemS.0 Homog. 0.03698011 -0.82249690 less
## 12 AxcR2 / StemS.0 Homog. 0.10811460 1.69818917 less
## 13 AxcR1 / StemS.1 Homog. 0.48052421 -0.47715061 less
## 14 AxcR2 / StemS.1 Homog. 0.59926258 0.29260277 less
## 15 AxcR1 / StemS.2 Homog. 0.41908006 3.49481660 less
## 16 AxcR2 / StemS.2 Homog. 0.27599200 0.82078570 less
## 17 AxcR1 / StemA.0 Homog. 0.76595294 1.53669110 less
## 18 AxcR2 / StemA.0 Homog. 0.63295693 -1.43746503 less
## 19 AxcR1 / StemA.1 Homog. 0.20361638 0.26186245 less
## 20 AxcR2 / StemA.1 Homog. 0.32299828 0.83189141 less
## 21 AxcR1 / Leave.0 Homog. 0.72348658 2.13924819 less
## 22 AxcR2 / Leave.0 Homog. 0.52504761 -1.56755644 less
## 23 AxcR1 / Leave.1 Homog. 0.24149577 0.02111477 less
## 24 AxcR2 / Leave.1 Homog. 0.44244854 1.66729070 less
## 25 AxcR1 / MaxStemHeight_m r 0.09149172 0.68994881 two-sided
## 26 AxcR2 / MaxStemHeight_m r -0.14448147 -1.18998713 two-sided
## 27 AxcR1 / MaxStemDia_cm r 0.08749172 0.67358979 two-sided
## 28 AxcR2 / MaxStemDia_cm r -0.12934431 -1.06921687 two-sided
## 29 AxcR1 / Under.canopy Homog. 0.97761339 1.77069366 less
## 30 AxcR2 / Under.canopy Homog. 0.96901013 0.58548969 less
## 31 AxcR1 / Under.understorey Homog. 0.02065195 -0.45299627 less
## 32 AxcR2 / Under.understorey Homog. 0.03098774 -0.29627554 less
## 33 AxcR1 / AverageFruitLength_cm r 0.24503760 1.89727497 two-sided
## 34 AxcR2 / AverageFruitLength_cm r -0.12292261 -0.96520838 two-sided
## 35 AxcR1 / Fruit.large Homog. 0.42030052 2.10914139 less
## 36 AxcR2 / Fruit.large Homog. 0.51860246 2.78553943 less
## 37 AxcR1 / Fruit.small Homog. 0.55423824 2.73768704 less
## 38 AxcR2 / Fruit.small Homog. 0.46746559 1.25826119 less
## 39 AxcR1 / Consp.conspicuous Homog. 0.28302363 -1.35476992 less
## 40 AxcR2 / Consp.conspicuous Homog. 0.49950186 1.79562903 less
## 41 AxcR1 / Consp.cryptic Homog. 0.67206694 1.88678666 less
## 42 AxcR2 / Consp.cryptic Homog. 0.46811068 -0.15736019 less
## Pvalue Pvalue.adj
## 1 0.996 1
## 2 0.261 0.8150625
## 3 0.61 0.8150625
## 4 0.946 1
## 5 1 1
## 6 1 1
## 7 0.61 0.8150625
## 8 0.946 1
## 9 0.996 1
## 10 0.261 0.8150625
## 11 0.241 0.8150625
## 12 0.942 1
## 13 0.308 0.8150625
## 14 0.584 0.8150625
## 15 0.993 1
## 16 0.833 1
## 17 0.929 1
## 18 0.099 0.693
## 19 0.594 0.8150625
## 20 0.811 1
## 21 0.967 1
## 22 0.07 0.6216
## 23 0.538 0.8150625
## 24 0.966 1
## 25 0.527 0.8150625
## 26 0.264 0.8150625
## 27 0.524 0.8150625
## 28 0.296 0.8150625
## 29 0.973 1
## 30 0.713 1
## 31 0.504 0.8150625
## 32 0.571 0.8150625
## 33 0.046 0.6216
## 34 0.366 0.8150625
## 35 0.973 1
## 36 0.993 1
## 37 0.988 1
## 38 0.911 1
## 39 0.074 0.6216
## 40 0.976 1
## 41 0.944 1
## 42 0.429 0.8150625
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
RLQ axes and environmental variables
## Fourth-corner Statistics
## ------------------------
## Permutation method Comb. 2 and 4 ( 999 permutations)
##
## Adjustment method for multiple comparisons: fdr
## call: fourthcorner.rlq(xtest = rlq.aravo, nrepet = nrepet, modeltype = 6, typetest = "R.axes", p.adjust.method.G = "fdr", p.adjust.method.D = "fdr")
##
## ---
##
## Test Stat Obs Std.Obs Alter Pvalue
## 1 Canopy.Cover / AxcQ1 r -0.012420893 -0.08504096 two-sided 0.891
## 2 Understory.Density / AxcQ1 r -0.029892325 -0.28535590 two-sided 0.784
## 3 Leaf.Litter / AxcQ1 r 0.083803687 0.83347452 two-sided 0.432
## 4 Soil.Moisture / AxcQ1 r 0.122365689 1.10765079 two-sided 0.265
## 5 Cec / AxcQ1 r 0.046971395 1.03900906 two-sided 0.333
## 6 T50 / AxcQ1 r 0.009956983 0.17613818 two-sided 0.897
## 7 T10 / AxcQ1 r 0.304644385 1.82411195 two-sided 0.079
## 8 Canopy.Height / AxcQ1 r -0.124070105 -1.03016040 two-sided 0.331
## 9 Elevation / AxcQ1 r 0.056259879 0.43232450 two-sided 0.687
## 10 Canopy.Cover / AxcQ2 r 0.014571724 0.12684783 two-sided 0.846
## 11 Understory.Density / AxcQ2 r -0.114617370 -1.15933364 two-sided 0.27
## 12 Leaf.Litter / AxcQ2 r 0.049781194 0.49259572 two-sided 0.636
## 13 Soil.Moisture / AxcQ2 r -0.068450849 -0.84961406 two-sided 0.419
## 14 Cec / AxcQ2 r 0.027732905 0.71951008 two-sided 0.499
## 15 T50 / AxcQ2 r 0.098808237 1.14865071 two-sided 0.219
## 16 T10 / AxcQ2 r -0.062682617 -0.36973774 two-sided 0.699
## 17 Canopy.Height / AxcQ2 r -0.090071839 -0.81666971 two-sided 0.48
## 18 Elevation / AxcQ2 r 0.117191890 0.95719518 two-sided 0.367
## Pvalue.adj
## 1 0.891
## 2 0.882
## 3 0.816545454545455
## 4 0.777857142857143
## 5 0.816545454545455
## 6 0.897
## 7 0.708
## 8 0.816545454545455
## 9 0.834352941176471
## 10 0.891
## 11 0.777857142857143
## 12 0.834352941176471
## 13 0.816545454545455
## 14 0.816545454545455
## 15 0.777857142857143
## 16 0.834352941176471
## 17 0.816545454545455
## 18 0.816545454545455
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Results can be represented using a table with colors indicating significance :
Significance with axes can also be reported on the factorial map of RLQ analysis. Here, significant associations with the first axis are represented in blue, with the second axis in orange, with both axes in green (variables with no significant association are in black)
That’s unreadable, plotting as separate.
## [1] "RLQ for juveniles"
## [1] "RLQ for adults"
Summary of RLQ analysis. How to interpret this?
## RLQ analysis
##
## Class: rlq dudi
## Call: rlq(dudiR = Rjuv, dudiL = Ljuv, dudiQ = Qjuv, scannf = FALSE)
##
## Total inertia: 1.429
##
## Eigenvalues:
## Ax1 Ax2 Ax3 Ax4 Ax5
## 0.746537 0.500895 0.121014 0.054025 0.003262
##
## Projected inertia (%):
## Ax1 Ax2 Ax3 Ax4 Ax5
## 52.2481 35.0563 8.4695 3.7811 0.2283
##
## Cumulative projected inertia (%):
## Ax1 Ax1:2 Ax1:3 Ax1:4 Ax1:5
## 52.25 87.30 95.77 99.55 99.78
##
## (Only 5 dimensions (out of 9) are shown)
##
##
## Eigenvalues decomposition:
## eig covar sdR sdQ corr
## 1 0.7465371 0.8640238 1.170836 1.785317 0.4133466
## 2 0.5008948 0.7077392 1.244773 1.691688 0.3360957
##
## Inertia & coinertia R (Rjuv):
## inertia max ratio
## 1 1.370856 1.858611 0.7375703
## 12 2.920316 3.464436 0.8429412
##
## Inertia & coinertia Q (Qjuv):
## inertia max ratio
## 1 3.187357 5.160919 0.6175949
## 12 6.049164 7.993775 0.7567344
##
## Correlation L (Ljuv):
## corr max ratio
## 1 0.4133466 0.9448971 0.4374514
## 2 0.3360957 0.9087471 0.3698452
## RLQ analysis
##
## Class: rlq dudi
## Call: rlq(dudiR = Radu, dudiL = Ladu, dudiQ = Qadu, scannf = FALSE)
##
## Total inertia: 1.04
##
## Eigenvalues:
## Ax1 Ax2 Ax3 Ax4 Ax5
## 0.564979 0.338546 0.115397 0.015354 0.003838
##
## Projected inertia (%):
## Ax1 Ax2 Ax3 Ax4 Ax5
## 54.314 32.546 11.094 1.476 0.369
##
## Cumulative projected inertia (%):
## Ax1 Ax1:2 Ax1:3 Ax1:4 Ax1:5
## 54.31 86.86 97.95 99.43 99.80
##
## (Only 5 dimensions (out of 10) are shown)
##
##
## Eigenvalues decomposition:
## eig covar sdR sdQ corr
## 1 0.5649794 0.7516511 1.317944 1.702729 0.3349451
## 2 0.3385457 0.5818468 1.128801 2.171484 0.2373747
##
## Inertia & coinertia R (Radu):
## inertia max ratio
## 1 1.736977 2.095715 0.8288231
## 12 3.011170 3.680365 0.8181714
##
## Inertia & coinertia Q (Qadu):
## inertia max ratio
## 1 2.899287 4.937157 0.5872382
## 12 7.614631 7.890549 0.9650318
##
## Correlation L (Ladu):
## corr max ratio
## 1 0.3349451 1.0000000 0.3349451
## 2 0.2373747 0.9128287 0.2600430
## [1] "FQ for juveniles"
## [1] "FQ for adults"
## [1] "FQ for Juveniles"
## [1] "FQ for Adults"
## class: krandtest lightkrandtest
## Monte-Carlo tests
## Call: randtest.rlq(xtest = rlq.juv, nrepet = nrepet, modeltype = 6)
##
## Number of tests: 2
##
## Adjustment method for multiple comparisons: none
## Permutation number: 999
## Test Obs Std.Obs Alter Pvalue
## 1 Model 2 1.42883 0.1299938 greater 0.373
## 2 Model 4 1.42883 -0.2833431 greater 0.569
## class: krandtest lightkrandtest
## Monte-Carlo tests
## Call: randtest.rlq(xtest = rlq.adu, nrepet = nrepet, modeltype = 6)
##
## Number of tests: 2
##
## Adjustment method for multiple comparisons: none
## Permutation number: 999
## Test Obs Std.Obs Alter Pvalue
## 1 Model 2 1.040218 14.1026397 greater 0.001
## 2 Model 4 1.040218 -0.1732769 greater 0.549
The total inertia of RLQ analysis is equal to the SRLQ multivariate statistic defined in Dray and Legendre (2008). This statistic is returned by the fourthcorner2 function:
## Monte-Carlo test
## Call: fourthcorner2(tabR = p_envFORCOVER, tabL = p_speciesJUV, tabQ = p_traits,
## modeltype = 6, nrepet = nrepet, p.adjust.method.G = "fdr")
##
## Observation: -8989.571
##
## Based on 848 replicates
## Simulated p-value: 0.5206125
## Alternative hypothesis: greater
##
## Std.Obs Expectation Variance
## 3.635986e-01 -1.067521e+04 2.149238e+07
## Monte-Carlo test
## Call: fourthcorner2(tabR = p_envFORCOVER, tabL = p_speciesADU, tabQ = p_traits,
## modeltype = 6, nrepet = nrepet, p.adjust.method.G = "fdr")
##
## Observation: -8989.96
##
## Based on 999 replicates
## Simulated p-value: 0.469
## Alternative hypothesis: greater
##
## Std.Obs Expectation Variance
## 3.555372e-01 -1.065493e+04 2.193028e+07
## [1] "juvenile"
## [1] "adult"
“Another approach is provided by the fourthcorner.rlq function and consists in testing directly the links between RLQ axes and traits (typetest=”Q.axes“) or environmental variables (typetest=”R.axes“).”
## Fourth-corner Statistics
## ------------------------
## Permutation method Comb. 2 and 4 ( 999 permutations)
##
## Adjustment method for multiple comparisons: fdr
## call: fourthcorner.rlq(xtest = rlq.juv, nrepet = nrepet, modeltype = 6, typetest = "Q.axes", p.adjust.method.G = "fdr", p.adjust.method.D = "fdr")
##
## ---
##
## Test Stat Obs Std.Obs Alter
## 1 AxcR1 / Climb.0 Homog. 0.935408906 0.96730878 less
## 2 AxcR2 / Climb.0 Homog. 0.896219686 -0.46788626 less
## 3 AxcR1 / Climb.1 Homog. 0.062673284 0.07444970 less
## 4 AxcR2 / Climb.1 Homog. 0.100874152 0.87771669 less
## 5 AxcR1 / Acaul.0 Homog. 1.000000000 <NA> less
## 6 AxcR2 / Acaul.0 Homog. 1.000000000 <NA> less
## 7 AxcR1 / Erect.0 Homog. 0.062673284 0.07444970 less
## 8 AxcR2 / Erect.0 Homog. 0.100874152 0.87771669 less
## 9 AxcR1 / Erect.1 Homog. 0.935408906 0.96730878 less
## 10 AxcR2 / Erect.1 Homog. 0.896219686 -0.46788626 less
## 11 AxcR1 / StemS.0 Homog. 0.062673284 -0.42172090 less
## 12 AxcR2 / StemS.0 Homog. 0.100874152 0.87771669 less
## 13 AxcR1 / StemS.1 Homog. 0.434638318 -0.66069204 less
## 14 AxcR2 / StemS.1 Homog. 0.515663169 -0.21398743 less
## 15 AxcR1 / StemS.2 Homog. 0.336057240 1.95516021 less
## 16 AxcR2 / StemS.2 Homog. 0.379436083 2.91532672 less
## 17 AxcR1 / StemA.0 Homog. 0.823478093 2.21574440 less
## 18 AxcR2 / StemA.0 Homog. 0.594579406 -1.47389245 less
## 19 AxcR1 / StemA.1 Homog. 0.174538043 0.04400098 less
## 20 AxcR2 / StemA.1 Homog. 0.280158884 0.47985122 less
## 21 AxcR1 / Leave.0 Homog. 0.758100818 2.24583807 less
## 22 AxcR2 / Leave.0 Homog. 0.493674666 -1.56170756 less
## 23 AxcR1 / Leave.1 Homog. 0.237514667 0.04512235 less
## 24 AxcR2 / Leave.1 Homog. 0.419778917 1.50727468 less
## 25 AxcR1 / MaxStemHeight_m r -0.210341823 -1.33485794 two-sided
## 26 AxcR2 / MaxStemHeight_m r -0.077264855 -0.60188406 two-sided
## 27 AxcR1 / MaxStemDia_cm r -0.214542329 -1.34534367 two-sided
## 28 AxcR2 / MaxStemDia_cm r -0.059720466 -0.50256913 two-sided
## 29 AxcR1 / Under.canopy Homog. 0.980841113 0.92303525 less
## 30 AxcR2 / Under.canopy Homog. 0.982255001 1.08882504 less
## 31 AxcR1 / Under.understorey Homog. 0.017971110 -0.50703885 less
## 32 AxcR2 / Under.understorey Homog. 0.017628019 -0.52176153 less
## 33 AxcR1 / AverageFruitLength_cm r -0.411890001 -2.72154411 two-sided
## 34 AxcR2 / AverageFruitLength_cm r -0.004254722 -0.05040763 two-sided
## 35 AxcR1 / Fruit.large Homog. 0.384995644 1.64637176 less
## 36 AxcR2 / Fruit.large Homog. 0.464108800 2.20963518 less
## 37 AxcR1 / Fruit.small Homog. 0.515842044 2.27569208 less
## 38 AxcR2 / Fruit.small Homog. 0.534845101 2.63988352 less
## 39 AxcR1 / Consp.conspicuous Homog. 0.273692963 -1.14915964 less
## 40 AxcR2 / Consp.conspicuous Homog. 0.460961375 1.47668390 less
## 41 AxcR1 / Consp.cryptic Homog. 0.718840507 2.13546153 less
## 42 AxcR2 / Consp.cryptic Homog. 0.448132549 -0.23765943 less
## Pvalue Pvalue.adj
## 1 0.834 1
## 2 0.239 0.939555555555556
## 3 0.729545454545454 0.953181818181818
## 4 0.816 1
## 5 1 1
## 6 1 1
## 7 0.729545454545454 0.953181818181818
## 8 0.816 1
## 9 0.834 1
## 10 0.239 0.939555555555556
## 11 0.48991935483871 0.939555555555556
## 12 0.816 1
## 13 0.29 0.939555555555556
## 14 0.435 0.939555555555556
## 15 0.94 1
## 16 0.982 1
## 17 0.984 1
## 18 0.088 0.7476
## 19 0.573 0.939555555555556
## 20 0.672 1
## 21 0.976 1
## 22 0.089 0.7476
## 23 0.54 0.939555555555556
## 24 0.951 1
## 25 0.2 0.939555555555556
## 26 0.577 1
## 27 0.198 0.939555555555556
## 28 0.664 1
## 29 0.817 1
## 30 0.867 1
## 31 0.500576701268743 0.939555555555556
## 32 0.567474048442907 0.939555555555556
## 33 0.001 0.042 *
## 34 0.967 1
## 35 0.944 1
## 36 0.976 1
## 37 0.967 1
## 38 0.985 1
## 39 0.136 0.939555555555556
## 40 0.953 1
## 41 0.97 1
## 42 0.424 0.939555555555556
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## Fourth-corner Statistics
## ------------------------
## Permutation method Comb. 2 and 4 ( 999 permutations)
##
## Adjustment method for multiple comparisons: fdr
## call: fourthcorner.rlq(xtest = rlq.adu, nrepet = nrepet, modeltype = 6, typetest = "Q.axes", p.adjust.method.G = "fdr", p.adjust.method.D = "fdr")
##
## ---
##
## Test Stat Obs Std.Obs Alter
## 1 AxcR1 / Climb.0 Homog. 0.836672753 -1.25688155 less
## 2 AxcR2 / Climb.0 Homog. 0.940072279 0.35896830 less
## 3 AxcR1 / Climb.1 Homog. 0.074800140 0.75299442 less
## 4 AxcR2 / Climb.1 Homog. 0.056918191 -0.05118715 less
## 5 AxcR1 / Acaul.0 Homog. 1.000000000 <NA> less
## 6 AxcR2 / Acaul.0 Homog. 1.000000000 <NA> less
## 7 AxcR1 / Erect.0 Homog. 0.074800140 0.75299442 less
## 8 AxcR2 / Erect.0 Homog. 0.056918191 -0.05118715 less
## 9 AxcR1 / Erect.1 Homog. 0.836672753 -1.25688155 less
## 10 AxcR2 / Erect.1 Homog. 0.940072279 0.35896830 less
## 11 AxcR1 / StemS.0 Homog. 0.100179857 2.12995286 less
## 12 AxcR2 / StemS.0 Homog. 0.061059378 -0.48373717 less
## 13 AxcR1 / StemS.1 Homog. 0.641005501 0.57497054 less
## 14 AxcR2 / StemS.1 Homog. 0.722324576 1.17791479 less
## 15 AxcR1 / StemS.2 Homog. 0.155320246 -0.92942985 less
## 16 AxcR2 / StemS.2 Homog. 0.193553765 -0.63288592 less
## 17 AxcR1 / StemA.0 Homog. 0.656649208 1.80265637 less
## 18 AxcR2 / StemA.0 Homog. 0.629379796 0.73860010 less
## 19 AxcR1 / StemA.1 Homog. 0.312689117 1.17801079 less
## 20 AxcR2 / StemA.1 Homog. 0.363941396 1.34293539 less
## 21 AxcR1 / Leave.0 Homog. 0.510919122 -1.69942334 less
## 22 AxcR2 / Leave.0 Homog. 0.566988117 0.85126100 less
## 23 AxcR1 / Leave.1 Homog. 0.488493502 1.01718767 less
## 24 AxcR2 / Leave.1 Homog. 0.421492370 1.17374967 less
## 25 AxcR1 / MaxStemHeight_m r 0.088990901 0.55193677 two-sided
## 26 AxcR2 / MaxStemHeight_m r 0.252057476 2.13834988 two-sided
## 27 AxcR1 / MaxStemDia_cm r -0.035464815 -0.25817726 two-sided
## 28 AxcR2 / MaxStemDia_cm r 0.258239812 2.20446456 two-sided
## 29 AxcR1 / Under.canopy Homog. 0.940406773 0.47747322 less
## 30 AxcR2 / Under.canopy Homog. 0.949032509 1.00781417 less
## 31 AxcR1 / Under.understorey Homog. 0.058403035 0.07372075 less
## 32 AxcR2 / Under.understorey Homog. 0.049026243 -0.16777458 less
## 33 AxcR1 / AverageFruitLength_cm r -0.004633307 -0.16778394 two-sided
## 34 AxcR2 / AverageFruitLength_cm r 0.158137536 1.37845374 two-sided
## 35 AxcR1 / Fruit.large Homog. 0.463222263 2.50854387 less
## 36 AxcR2 / Fruit.large Homog. 0.558166806 0.48794982 less
## 37 AxcR1 / Fruit.small Homog. 0.534548704 2.61819964 less
## 38 AxcR2 / Fruit.small Homog. 0.400441438 -1.69145817 less
## 39 AxcR1 / Consp.conspicuous Homog. 0.559426785 1.05934370 less
## 40 AxcR2 / Consp.conspicuous Homog. 0.506219974 0.04933554 less
## 41 AxcR1 / Consp.cryptic Homog. 0.439722847 -0.26063794 less
## 42 AxcR2 / Consp.cryptic Homog. 0.473926570 -0.05589842 less
## Pvalue Pvalue.adj
## 1 0.127 0.654
## 2 0.598 0.966
## 3 0.791 1
## 4 0.793397231096912 1
## 5 1 1
## 6 1 1
## 7 0.791 1
## 8 0.793397231096912 1
## 9 0.127 0.654
## 10 0.598 0.966
## 11 0.974 1
## 12 0.495 1
## 13 0.681 1
## 14 0.881 1
## 15 0.218 0.654
## 16 0.345 0.905625
## 17 0.966 1
## 18 0.77 1
## 19 0.854 1
## 20 0.881 1
## 21 0.056 0.4704
## 22 0.802 1
## 23 0.842 1
## 24 0.887 1
## 25 0.631 1
## 26 0.004 0.084 .
## 27 0.791 1
## 28 0.002 0.084 .
## 29 0.664 1
## 30 0.84 1
## 31 0.647497337593184 1
## 32 0.647497337593184 1
## 33 0.868 1
## 34 0.197 0.654
## 35 0.981 1
## 36 0.688 1
## 37 0.996 1
## 38 0.043 0.168
## 39 0.855 1
## 40 0.538 1
## 41 0.41 0.956666666666667
## 42 0.483 1
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## Fourth-corner Statistics
## ------------------------
## Permutation method Comb. 2 and 4 ( 999 permutations)
##
## Adjustment method for multiple comparisons: fdr
## call: fourthcorner.rlq(xtest = rlq.juv, nrepet = nrepet, modeltype = 6, typetest = "R.axes", p.adjust.method.G = "fdr", p.adjust.method.D = "fdr")
##
## ---
##
## Test Stat Obs Std.Obs Alter Pvalue Pvalue.adj
## 1 Canopy.Cover / AxcQ1 r -0.023925899 -0.1934982 two-sided 0.793 0.906285714285714
## 2 Understory.Density / AxcQ1 r -0.046616337 -0.3474136 two-sided 0.763 0.906285714285714
## 3 Leaf.Litter / AxcQ1 r -0.004365802 -0.0126180 two-sided 0.987 0.987
## 4 Soil.Moisture / AxcQ1 r -0.220288874 -1.6287285 two-sided 0.11 0.377142857142857
## 5 Cec / AxcQ1 r -0.021245562 -0.1654269 two-sided 0.739 0.906285714285714
## 6 T50 / AxcQ1 r 0.050329640 0.6670247 two-sided 0.555 0.830181818181818
## 7 T10 / AxcQ1 r -0.314893261 -1.4962719 two-sided 0.135 0.648
## 8 Canopy.Height / AxcQ1 r 0.080491140 0.5959590 two-sided 0.586 0.830181818181818
## 9 Elevation / AxcQ1 r 0.074152550 0.5241494 two-sided 0.629 0.838666666666667
## 10 Habit.Primary / AxcQ1 Homog. 0.339462103 -1.5132647 less 0.087 0.522
## 11 Habit.Secondary / AxcQ1 Homog. 0.586665219 1.2752312 less 0.886 0.924521739130435
## 12 Habit.Transition / AxcQ1 Homog. 0.005065871 -0.3037668 less 0.434 0.801230769230769
## 13 Canopy.Cover / AxcQ2 r -0.077862187 -1.1990435 two-sided 0.25 0.690666666666667
## 14 Understory.Density / AxcQ2 r -0.189627260 -1.6219673 two-sided 0.11 0.377142857142857
## 15 Leaf.Litter / AxcQ2 r 0.155590484 1.1873636 two-sided 0.259 0.690666666666667
## 16 Soil.Moisture / AxcQ2 r -0.067983135 -0.5704121 two-sided 0.618 0.830181818181818
## 17 Cec / AxcQ2 r 0.052327639 0.8462091 two-sided 0.423 0.801230769230769
## 18 T50 / AxcQ2 r 0.153959525 1.5089620 two-sided 0.176 0.474666666666667
## 19 T10 / AxcQ2 r 0.119721332 0.5934057 two-sided 0.587 0.830181818181818
## 20 Canopy.Height / AxcQ2 r -0.132627095 -1.0155636 two-sided 0.36 0.785454545454545
## 21 Elevation / AxcQ2 r 0.213975341 1.4183420 two-sided 0.176 0.690666666666667
## 22 Habit.Primary / AxcQ2 Homog. 0.548269612 1.2032756 less 0.882 0.922434782608696
## 23 Habit.Secondary / AxcQ2 Homog. 0.448034986 -0.5104000 less 0.298 0.7152
## 24 Habit.Transition / AxcQ2 Homog. 0.003669394 -0.7159396 less 0.203 0.690666666666667
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## Fourth-corner Statistics
## ------------------------
## Permutation method Comb. 2 and 4 ( 999 permutations)
##
## Adjustment method for multiple comparisons: fdr
## call: fourthcorner.rlq(xtest = rlq.adu, nrepet = nrepet, modeltype = 6, typetest = "R.axes", p.adjust.method.G = "fdr", p.adjust.method.D = "fdr")
##
## ---
##
## Test Stat Obs Std.Obs Alter Pvalue Pvalue.adj
## 1 Canopy.Cover / AxcQ1 r -0.020525343 -0.52987608 two-sided 0.593 0.884210526315789
## 2 Understory.Density / AxcQ1 r 0.176408140 1.90263412 two-sided 0.066 0.6384
## 3 Leaf.Litter / AxcQ1 r -0.050385708 -0.56929404 two-sided 0.642 0.884210526315789
## 4 Soil.Moisture / AxcQ1 r -0.201383111 -1.92812765 two-sided 0.084 0.6384
## 5 Cec / AxcQ1 r -0.032244658 -0.69057769 two-sided 0.552 0.884210526315789
## 6 T50 / AxcQ1 r 0.062841701 1.54634036 two-sided 0.133 0.6384
## 7 T10 / AxcQ1 r 0.104356069 1.04877602 two-sided 0.335 0.884210526315789
## 8 Canopy.Height / AxcQ1 r -0.079818074 -0.61186294 two-sided 0.53 0.884210526315789
## 9 Elevation / AxcQ1 r 0.292632454 1.94190843 two-sided 0.061 0.6384
## 10 Habit.Primary / AxcQ1 Homog. 0.616404905 3.82920806 less 1 1
## 11 Habit.Secondary / AxcQ1 Homog. 0.351213487 0.06348844 less 0.453 0.884210526315789
## 12 Habit.Transition / AxcQ1 Homog. 0.020031880 1.01380927 less 0.89 0.970909090909091
## 13 Canopy.Cover / AxcQ2 r -0.059842511 -1.41144181 two-sided 0.177 0.685714285714286
## 14 Understory.Density / AxcQ2 r -0.043046543 -0.55372181 two-sided 0.589 0.884210526315789
## 15 Leaf.Litter / AxcQ2 r 0.116980880 1.34077455 two-sided 0.2 0.685714285714286
## 16 Soil.Moisture / AxcQ2 r -0.059469654 -0.50494174 two-sided 0.671 0.884210526315789
## 17 Cec / AxcQ2 r 0.003349974 0.07791062 two-sided 0.949 1
## 18 T50 / AxcQ2 r -0.015681784 -0.42301126 two-sided 0.7 0.884210526315789
## 19 T10 / AxcQ2 r 0.114251067 0.99929615 two-sided 0.404 0.884210526315789
## 20 Canopy.Height / AxcQ2 r 0.185686323 1.51680403 two-sided 0.122 0.6384
## 21 Elevation / AxcQ2 r 0.006309089 0.11471122 two-sided 0.901 1
## 22 Habit.Primary / AxcQ2 Homog. 0.671935150 7.51254013 less 1 1
## 23 Habit.Secondary / AxcQ2 Homog. 0.315497275 -0.70813760 less 0.244 0.732
## 24 Habit.Transition / AxcQ2 Homog. 0.011255924 0.97553325 less 0.842 0.962285714285714
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Results can be represented using a table with colors indicating significance :
## [1] "juveniles"
## [1] "adults"
Significance with axes can also be reported on the factorial map of RLQ analysis. Here, significant associations with the first axis are represented in blue, with the second axis in orange, with both axes in green (variables with no significant association are in black)
## [1] "juveniles"
## [1] "adults"
p_traits$Endemic<-as.factor(palm_list$Endemic)
# splom(p_envFORCOVER)
res1 <- corrplot::cor.mtest(p_envFORCOVER[,1:9], conf.level = 0.95)
corrplot::corrplot(cor(p_envFORCOVER[,1:9]),p.mat = res1$p,type = "upper")## Loading required package: xts
## Loading required package: zoo
##
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
##
## as.Date, as.Date.numeric
##
## Attaching package: 'xts'
## The following objects are masked from 'package:dplyr':
##
## first, last
##
## Attaching package: 'PerformanceAnalytics'
## The following object is masked from 'package:graphics':
##
## legend
That’s unreadable, plotting as separate.
## [1] "RLQ for juveniles"
## [1] "RLQ for adults"
Summary of RLQ analysis. How to interpret this?
## RLQ analysis
##
## Class: rlq dudi
## Call: rlq(dudiR = Rjuv, dudiL = Ljuv, dudiQ = Qjuv, scannf = FALSE)
##
## Total inertia: 0.4674
##
## Eigenvalues:
## Ax1 Ax2 Ax3 Ax4 Ax5
## 0.301697 0.091827 0.060581 0.011275 0.001581
##
## Projected inertia (%):
## Ax1 Ax2 Ax3 Ax4 Ax5
## 64.5440 19.6452 12.9604 2.4121 0.3382
##
## Cumulative projected inertia (%):
## Ax1 Ax1:2 Ax1:3 Ax1:4 Ax1:5
## 64.54 84.19 97.15 99.56 99.90
##
## (Only 5 dimensions (out of 7) are shown)
##
##
## Eigenvalues decomposition:
## eig covar sdR sdQ corr
## 1 0.3016970 0.5492695 1.051910 1.525115 0.3423768
## 2 0.0918274 0.3030304 1.012602 1.637065 0.1828023
##
## Inertia & coinertia R (Rjuv):
## inertia max ratio
## 1 1.106514 1.337773 0.8271320
## 12 2.131877 2.562976 0.8317977
##
## Inertia & coinertia Q (Qjuv):
## inertia max ratio
## 1 2.325976 3.708939 0.6271271
## 12 5.005957 6.934943 0.7218454
##
## Correlation L (Ljuv):
## corr max ratio
## 1 0.3423768 0.8781144 0.3899000
## 2 0.1828023 0.8370330 0.2183931
## RLQ analysis
##
## Class: rlq dudi
## Call: rlq(dudiR = Radu, dudiL = Ladu, dudiQ = Qadu, scannf = FALSE)
##
## Total inertia: 0.3211
##
## Eigenvalues:
## Ax1 Ax2 Ax3 Ax4 Ax5
## 0.189211 0.082500 0.040937 0.005584 0.002079
##
## Projected inertia (%):
## Ax1 Ax2 Ax3 Ax4 Ax5
## 58.9177 25.6894 12.7472 1.7387 0.6473
##
## Cumulative projected inertia (%):
## Ax1 Ax1:2 Ax1:3 Ax1:4 Ax1:5
## 58.92 84.61 97.35 99.09 99.74
##
## (Only 5 dimensions (out of 7) are shown)
##
##
## Eigenvalues decomposition:
## eig covar sdR sdQ corr
## 1 0.18921104 0.4349840 1.065530 1.934510 0.2110263
## 2 0.08250008 0.2872283 1.034332 1.399049 0.1984881
##
## Inertia & coinertia R (Radu):
## inertia max ratio
## 1 1.135354 1.366001 0.8311512
## 12 2.205196 2.525155 0.8732914
##
## Inertia & coinertia Q (Qadu):
## inertia max ratio
## 1 3.742330 4.077184 0.9178713
## 12 5.699667 7.312295 0.7794636
##
## Correlation L (Ladu):
## corr max ratio
## 1 0.2110263 1.0000000 0.2110263
## 2 0.1984881 0.9480088 0.2093737
## [1] "FQ for juveniles"
## [1] "FQ for adults"
## [1] "FQ for Juveniles"
## [1] "FQ for Adults"
## class: krandtest lightkrandtest
## Monte-Carlo tests
## Call: randtest.rlq(xtest = rlq.juv, nrepet = nrepet, modeltype = 6)
##
## Number of tests: 2
##
## Adjustment method for multiple comparisons: none
## Permutation number: 999
## Test Obs Std.Obs Alter Pvalue
## 1 Model 2 0.4674284 12.6063583 greater 0.001
## 2 Model 4 0.4674284 0.1726624 greater 0.411
## class: krandtest lightkrandtest
## Monte-Carlo tests
## Call: randtest.rlq(xtest = rlq.adu, nrepet = nrepet, modeltype = 6)
##
## Number of tests: 2
##
## Adjustment method for multiple comparisons: none
## Permutation number: 999
## Test Obs Std.Obs Alter Pvalue
## 1 Model 2 0.3211446 12.257439 greater 0.001
## 2 Model 4 0.3211446 1.406965 greater 0.089
The total inertia of RLQ analysis is equal to the SRLQ multivariate statistic defined in Dray and Legendre (2008). This statistic is returned by the fourthcorner2 function:
## Monte-Carlo test
## Call: fourthcorner2(tabR = p_envCombined, tabL = JuvCombined, tabQ = p_traits2,
## modeltype = 6, nrepet = nrepet, p.adjust.method.G = "fdr")
##
## Observation: 0.4674284
##
## Based on 964 replicates
## Simulated p-value: 0.4248705
## Alternative hypothesis: greater
##
## Std.Obs Expectation Variance
## 0.10432746 0.45282485 0.01959388
## Monte-Carlo test
## Call: fourthcorner2(tabR = p_envCombined, tabL = AduCombined, tabQ = p_traits2,
## modeltype = 6, nrepet = nrepet, p.adjust.method.G = "fdr")
##
## Observation: 0.3211446
##
## Based on 999 replicates
## Simulated p-value: 0.081
## Alternative hypothesis: greater
##
## Std.Obs Expectation Variance
## 5.358191e-01 -2.229758e+03 1.732224e+07
## [1] "juvenile"
## [1] "adult"
“Another approach is provided by the fourthcorner.rlq function and consists in testing directly the links between RLQ axes and traits (typetest=”Q.axes“) or environmental variables (typetest=”R.axes“).”
## Fourth-corner Statistics
## ------------------------
## Permutation method Comb. 2 and 4 ( 999 permutations)
##
## Adjustment method for multiple comparisons: fdr
## call: fourthcorner.rlq(xtest = rlq.juv, nrepet = nrepet, modeltype = 6, typetest = "Q.axes", p.adjust.method.G = "fdr", p.adjust.method.D = "fdr")
##
## ---
##
## Test Stat Obs Std.Obs Alter
## 1 AxcR1 / Climb.0 Homog. 0.946145397 -0.1148769406 less
## 2 AxcR2 / Climb.0 Homog. 0.940807546 -0.2188758822 less
## 3 AxcR1 / Climb.1 Homog. 0.035379710 -0.0001350046 less
## 4 AxcR2 / Climb.1 Homog. 0.054673254 2.5680181367 less
## 5 AxcR1 / Erect.0 Homog. 0.035379710 -0.0001350046 less
## 6 AxcR2 / Erect.0 Homog. 0.054673254 2.5680181367 less
## 7 AxcR1 / Erect.1 Homog. 0.946145397 -0.1148769406 less
## 8 AxcR2 / Erect.1 Homog. 0.940807546 -0.2188758822 less
## 9 AxcR1 / StemS.0 Homog. 0.044847899 -0.5084881264 less
## 10 AxcR2 / StemS.0 Homog. 0.066274156 2.6992848414 less
## 11 AxcR1 / StemS.1 Homog. 0.589189574 -0.0320202125 less
## 12 AxcR2 / StemS.1 Homog. 0.644852815 0.4176655015 less
## 13 AxcR1 / StemS.2 Homog. 0.343604259 2.3998440777 less
## 14 AxcR2 / StemS.2 Homog. 0.282942966 -0.0062283808 less
## 15 AxcR1 / StemA.0 Homog. 0.398808649 0.0198219125 less
## 16 AxcR2 / StemA.0 Homog. 0.392997578 -0.2941239148 less
## 17 AxcR1 / StemA.1 Homog. 0.588439989 3.5971606031 less
## 18 AxcR2 / StemA.1 Homog. 0.604662262 3.8964772243 less
## 19 AxcR1 / Leave.0 Homog. 0.334228597 -1.4101424971 less
## 20 AxcR2 / Leave.0 Homog. 0.335114659 -0.9955816095 less
## 21 AxcR1 / Leave.1 Homog. 0.635973410 3.3365209738 less
## 22 AxcR2 / Leave.1 Homog. 0.664436879 3.7276337910 less
## 23 AxcR1 / MaxStemHeight_m r -0.080433938 -0.5478686565 two-sided
## 24 AxcR2 / MaxStemHeight_m r 0.039361366 0.2473651968 two-sided
## 25 AxcR1 / MaxStemDia_cm r -0.112931548 -0.7612163489 two-sided
## 26 AxcR2 / MaxStemDia_cm r 0.068668620 0.4499817769 two-sided
## 27 AxcR1 / Under.canopy Homog. 0.820160891 -0.3101557672 less
## 28 AxcR2 / Under.canopy Homog. 0.819952984 -0.3297687297 less
## 29 AxcR1 / Under.understorey Homog. 0.135449176 0.0769366698 less
## 30 AxcR2 / Under.understorey Homog. 0.178965762 0.6065798799 less
## 31 AxcR1 / AverageFruitLength_cm r -0.004404488 -0.1193815472 two-sided
## 32 AxcR2 / AverageFruitLength_cm r 0.153893411 1.0561546906 two-sided
## 33 AxcR1 / Fruit.large Homog. 0.171486845 -0.0999686257 less
## 34 AxcR2 / Fruit.large Homog. 0.223675676 0.4463623804 less
## 35 AxcR1 / Fruit.small Homog. 0.818439303 3.7127044108 less
## 36 AxcR2 / Fruit.small Homog. 0.739755535 -0.5707837084 less
## 37 AxcR1 / Consp.conspicuous Homog. 0.672679178 1.4584625241 less
## 38 AxcR2 / Consp.conspicuous Homog. 0.699889570 1.7289856579 less
## 39 AxcR1 / Consp.cryptic Homog. 0.309786182 0.3596761545 less
## 40 AxcR2 / Consp.cryptic Homog. 0.298859343 -0.3235210338 less
## 41 AxcR1 / Endem.N Homog. 0.723831110 -0.1244633410 less
## 42 AxcR2 / Endem.N Homog. 0.744686414 0.0504341665 less
## 43 AxcR1 / Endem.Y Homog. 0.196611974 -0.3507231609 less
## 44 AxcR2 / Endem.Y Homog. 0.252363669 0.1557678499 less
## Pvalue Pvalue.adj
## 1 0.341 0.937894736842105
## 2 0.341 0.937894736842105
## 3 0.710526315789474 0.937894736842105
## 4 0.992 1
## 5 0.710526315789474 0.937894736842105
## 6 0.992 1
## 7 0.341 0.937894736842105
## 8 0.341 0.937894736842105
## 9 0.403 0.937894736842105
## 10 0.995 1
## 11 0.489 0.937894736842105
## 12 0.63 0.937894736842105
## 13 0.986 1
## 14 0.55 0.937894736842105
## 15 0.53 0.748
## 16 0.411 0.6028
## 17 0.999 1
## 18 1 1
## 19 0.063 0.17325
## 20 0.149 0.3278
## 21 0.999 1
## 22 1 1
## 23 0.604 0.937894736842105
## 24 0.822 0.977513513513514
## 25 0.488 0.937894736842105
## 26 0.673 0.937894736842105
## 27 0.3 0.937894736842105
## 28 0.307 0.937894736842105
## 29 0.629 0.937894736842105
## 30 0.742 0.937894736842105
## 31 0.924 1
## 32 0.321 0.937894736842105
## 33 0.532 0.937894736842105
## 34 0.706 0.937894736842105
## 35 1 1
## 36 0.265 0.937894736842105
## 37 0.906 1
## 38 0.953 1
## 39 0.662 0.792
## 40 0.403 0.6028
## 41 0.415 0.937894736842105
## 42 0.483 0.937894736842105
## 43 0.41 0.937894736842105
## 44 0.622 0.937894736842105
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## Fourth-corner Statistics
## ------------------------
## Permutation method Comb. 2 and 4 ( 999 permutations)
##
## Adjustment method for multiple comparisons: fdr
## call: fourthcorner.rlq(xtest = rlq.adu, nrepet = nrepet, modeltype = 6, typetest = "Q.axes", p.adjust.method.G = "fdr", p.adjust.method.D = "fdr")
##
## ---
##
## Test Stat Obs Std.Obs Alter
## 1 AxcR1 / Climb.0 Homog. 0.97259607 1.05259014 less
## 2 AxcR2 / Climb.0 Homog. 0.97165454 1.33271608 less
## 3 AxcR1 / Climb.1 Homog. 0.02470440 -0.39892130 less
## 4 AxcR2 / Climb.1 Homog. 0.01501959 -0.52767497 less
## 5 AxcR1 / Erect.0 Homog. 0.02470440 -0.39892130 less
## 6 AxcR2 / Erect.0 Homog. 0.01501959 -0.52767497 less
## 7 AxcR1 / Erect.1 Homog. 0.97259607 1.05259014 less
## 8 AxcR2 / Erect.1 Homog. 0.97165454 1.33271608 less
## 9 AxcR1 / StemS.0 Homog. 0.04667853 -0.49876184 less
## 10 AxcR2 / StemS.0 Homog. 0.05169585 -0.46197099 less
## 11 AxcR1 / StemS.1 Homog. 0.47155887 -0.69864193 less
## 12 AxcR2 / StemS.1 Homog. 0.49723513 1.18821659 less
## 13 AxcR1 / StemS.2 Homog. 0.46836829 1.02477170 less
## 14 AxcR2 / StemS.2 Homog. 0.44356541 0.89498925 less
## 15 AxcR1 / StemA.0 Homog. 0.22071648 -0.86952242 less
## 16 AxcR2 / StemA.0 Homog. 0.29011952 3.92693411 less
## 17 AxcR1 / StemA.1 Homog. 0.77899451 0.89547673 less
## 18 AxcR2 / StemA.1 Homog. 0.70234050 3.08040359 less
## 19 AxcR1 / Leave.0 Homog. 0.19360106 -0.48539909 less
## 20 AxcR2 / Leave.0 Homog. 0.25134070 3.79134637 less
## 21 AxcR1 / Leave.1 Homog. 0.80636636 3.12826558 less
## 22 AxcR2 / Leave.1 Homog. 0.72776100 2.70909475 less
## 23 AxcR1 / MaxStemHeight_m r -0.12121085 -1.57395545 two-sided
## 24 AxcR2 / MaxStemHeight_m r -0.01899858 -0.21960944 two-sided
## 25 AxcR1 / MaxStemDia_cm r -0.16488303 -2.11750697 two-sided
## 26 AxcR2 / MaxStemDia_cm r -0.02835505 -0.29717803 two-sided
## 27 AxcR1 / Under.canopy Homog. 0.83895336 0.13484039 less
## 28 AxcR2 / Under.canopy Homog. 0.85721283 1.70162864 less
## 29 AxcR1 / Under.understorey Homog. 0.15383819 0.06609911 less
## 30 AxcR2 / Under.understorey Homog. 0.14161148 -0.03171161 less
## 31 AxcR1 / AverageFruitLength_cm r -0.20947256 -2.85188139 two-sided
## 32 AxcR2 / AverageFruitLength_cm r 0.04353332 0.68184107 two-sided
## 33 AxcR1 / Fruit.large Homog. 0.21008433 0.15700105 less
## 34 AxcR2 / Fruit.large Homog. 0.21210459 0.17367805 less
## 35 AxcR1 / Fruit.small Homog. 0.75223526 -0.39479067 less
## 36 AxcR2 / Fruit.small Homog. 0.78287009 1.14225600 less
## 37 AxcR1 / Consp.conspicuous Homog. 0.75503793 1.45994770 less
## 38 AxcR2 / Consp.conspicuous Homog. 0.73845820 1.40003774 less
## 39 AxcR1 / Consp.cryptic Homog. 0.23515304 -0.26402736 less
## 40 AxcR2 / Consp.cryptic Homog. 0.26066079 1.31317780 less
## 41 AxcR1 / Endem.N Homog. 0.83697797 0.54300255 less
## 42 AxcR2 / Endem.N Homog. 0.85577732 1.92199173 less
## 43 AxcR1 / Endem.Y Homog. 0.15593828 -0.55394110 less
## 44 AxcR2 / Endem.Y Homog. 0.13984418 -0.67537315 less
## Pvalue Pvalue.adj
## 1 0.865 1
## 2 0.913 1
## 3 0.489308176100629 0.797391101793617
## 4 0.306918238993711 0.79376
## 5 0.489308176100629 0.797391101793617
## 6 0.306918238993711 0.79376
## 7 0.865 1
## 8 0.913 1
## 9 0.39460020768432 0.79376
## 10 0.423676012461059 0.79376
## 11 0.296 0.79376
## 12 0.885 1
## 13 0.785 0.933513513513514
## 14 0.757 0.933513513513514
## 15 0.196 0.4312
## 16 1 1
## 17 0.81 1
## 18 1 1
## 19 0.321 0.614086956521739
## 20 1 1
## 21 1 1
## 22 0.998 1
## 23 0.132 0.645333333333333
## 24 0.819 0.948315789473684
## 25 0.031 0.227333333333333
## 26 0.78 0.933513513513514
## 27 0.53 0.804137931034483
## 28 0.959 1
## 29 0.67 0.910666666666667
## 30 0.619 0.910666666666667
## 31 0.002 0.0176 *
## 32 0.511 0.803
## 33 0.683 0.910666666666667
## 34 0.677 0.910666666666667
## 35 0.25 0.79376
## 36 0.87 1
## 37 0.938 1
## 38 0.924 1
## 39 0.422 0.70237037037037
## 40 0.903 1
## 41 0.625 0.910666666666667
## 42 0.976 1
## 43 0.37 0.79376
## 44 0.31 0.79376
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## Fourth-corner Statistics
## ------------------------
## Permutation method Comb. 2 and 4 ( 999 permutations)
##
## Adjustment method for multiple comparisons: fdr
## call: fourthcorner.rlq(xtest = rlq.juv, nrepet = nrepet, modeltype = 6, typetest = "R.axes", p.adjust.method.G = "fdr", p.adjust.method.D = "fdr")
##
## ---
##
## Test Stat Obs Std.Obs Alter Pvalue Pvalue.adj
## 1 Under.dense / AxcQ1 Homog. 0.2247021780 0.52971405 less 0.766 0.942769230769231
## 2 Under.low / AxcQ1 Homog. 0.2145745846 -1.07125766 less 0.136 0.362666666666667
## 3 Under.medium / AxcQ1 Homog. 0.5505971813 1.39236372 less 0.928 0.942
## 4 Cec / AxcQ1 r 0.0447036128 1.89196227 two-sided 0.06 0.3136
## 5 T50 / AxcQ1 r -0.0004649455 0.05524814 two-sided 0.959 0.959
## 6 T10 / AxcQ1 r -0.0260585160 -0.63893141 two-sided 0.565 0.753333333333333
## 7 Canopy.Height / AxcQ1 r -0.0501237029 -0.72441670 two-sided 0.504 0.733090909090909
## 8 Elevation / AxcQ1 r 0.3382182307 2.19041707 two-sided 0.009 0.104
## 9 Under.dense / AxcQ2 Homog. 0.2563418102 1.74515940 less 0.952 0.959
## 10 Under.low / AxcQ2 Homog. 0.2329955848 -0.50363235 less 0.302 0.604
## 11 Under.medium / AxcQ2 Homog. 0.5030093046 -0.18546981 less 0.474 0.637333333333333
## 12 Cec / AxcQ2 r -0.0402389406 -1.29402026 two-sided 0.131 0.347428571428571
## 13 T50 / AxcQ2 r -0.0246763342 -0.64930183 two-sided 0.441 0.637333333333333
## 14 T10 / AxcQ2 r 0.0320531552 0.93777412 two-sided 0.384 0.682666666666667
## 15 Canopy.Height / AxcQ2 r 0.1494572496 2.09771471 two-sided 0.013 0.104
## 16 Elevation / AxcQ2 r 0.0319051607 0.22578238 two-sided 0.848 0.959
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## Fourth-corner Statistics
## ------------------------
## Permutation method Comb. 2 and 4 ( 999 permutations)
##
## Adjustment method for multiple comparisons: fdr
## call: fourthcorner.rlq(xtest = rlq.adu, nrepet = nrepet, modeltype = 6, typetest = "R.axes", p.adjust.method.G = "fdr", p.adjust.method.D = "fdr")
##
## ---
##
## Test Stat Obs Std.Obs Alter Pvalue Pvalue.adj
## 1 Under.dense / AxcQ1 Homog. 0.2149556616 0.004439614 less 0.527 0.766545454545455
## 2 Under.low / AxcQ1 Homog. 0.3099417544 1.452916339 less 0.927 0.9888
## 3 Under.medium / AxcQ1 Homog. 0.4730200003 -1.479031165 less 0.066 0.264
## 4 Cec / AxcQ1 r 0.0300820109 1.142201262 two-sided 0.251 0.446222222222222
## 5 T50 / AxcQ1 r -0.0101771698 -0.278591113 two-sided 0.825 0.967
## 6 T10 / AxcQ1 r -0.1309384581 -2.053698708 two-sided 0.011 0.0853333333333333 .
## 7 Canopy.Height / AxcQ1 r -0.1505954246 -1.933751571 two-sided 0.016 0.0853333333333333 .
## 8 Elevation / AxcQ1 r 0.0874342319 1.154647542 two-sided 0.255 0.51
## 9 Under.dense / AxcQ2 Homog. 0.2559389973 1.164855997 less 0.88 0.9888
## 10 Under.low / AxcQ2 Homog. 0.2337497338 -0.699499797 less 0.237 0.51
## 11 Under.medium / AxcQ2 Homog. 0.5087809384 -0.015928990 less 0.492 0.766545454545455
## 12 Cec / AxcQ2 r 0.0002212089 0.008726186 two-sided 0.994 0.994
## 13 T50 / AxcQ2 r -0.0156254783 -0.507891312 two-sided 0.612 0.816
## 14 T10 / AxcQ2 r 0.0530492759 0.907636996 two-sided 0.404 0.6464
## 15 Canopy.Height / AxcQ2 r 0.0706682094 1.024358412 two-sided 0.328 0.583111111111111
## 16 Elevation / AxcQ2 r 0.1804615643 2.785023345 two-sided 0.004 0.064 .
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## [1] "juveniles"
## [1] "adults"
Significance with axes can also be reported on the factorial map of RLQ analysis. Here, significant associations with the first axis are represented in blue, with the second axis in orange, with both axes in green (variables with no significant association are in black)
## [1] "juveniles"
## [1] "adults"